package com.un.ebs.product.domain;

import com.un.ebs.product.enums.ProductPurchaseTypeEnum;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.un.ebs.product.enums.ProductUnitTypeEnum;
import org.springframework.stereotype.Component;
import lombok.Data;
import com.un.ebs.core.metadata.DbField;

/**
 * (SkuExt)表实体类
 *
 * @author liubo
 * @since 2020-12-12 22:23:39
 */
@Data
@Component
@TableName("v_sku_ext")
@SuppressWarnings("serial")
public class SkuExt extends Model<SkuExt> {


    @DbField(name = "sku_id", length = 40, precision = 0)
    private String skuId;

    @DbField(name = "sku_code", length = 100, precision = 0)
    private String skuCode;

    @DbField(name = "sku_name", length = 100, precision = 0)
    private String skuName;

    @DbField(name = "price", length = 10, precision = 2)
    private Double price;

    @DbField(name = "production_seq_id", length = 40, precision = 0)
    private String productionSeqId;

    @DbField(name = "production_seq_name", length = 100, precision = 0)
    private String productionSeqName;

    @DbField(name = "buy_min_qty", length = -1, precision = 0)
    private Integer buyMinQty;

    @DbField(name = "purchase_type", length = -1, precision = 0)
    private ProductPurchaseTypeEnum purchaseType;

    @DbField(name = "unit_type", length = -1, precision = 0)
    private ProductUnitTypeEnum unitType;

    @DbField(name = "class_id", length = 40, precision = 0)
    private String classId;

    @DbField(name = "class_name", length = 40, precision = 0)
    private String className;

    @DbField(name = "spu_id", length = 40, precision = 0)
    private String spuId;

    @TableLogic
    @DbField(name = "is_delete", length = -1, precision = 0)
    private Integer isDelete;

    @DbField(name = "tenant_id", length = 40, precision = 0)
    private String tenantId;

    @DbField(name = "cost_price", length = 18, precision = 4)
    private Double costPrice;

    @DbField(name = "warehouse_desc", length = 100, precision = 0)
    private String warehouseDesc;

    @DbField(name = "purchase_quality_proportion", length = 18, precision = 0)
    private double purchaseQualityProportion;

    @DbField(name = "sale_quality_proportion", length = 18, precision = 0)
    private double saleQualityProportion;

    @DbField(name = "production_quality_proportion", length = 18, precision = 0)
    private double productionQualityProportion;


}